Coding system for multiple transmitters and a single receiver for a garage door opener

ABSTRACT

The present invention comprises a system for remote control of garage doors and other devices wherein an extremely large number of codes are available for remote transmitters for operating the garage operator and wherein each transmitter has its own unique and permanent nonuser changeable code. The receiver at the garage door operator is capable of storing and remembering a number of different codes corresponding to different transmitters such that the receiver can be programmed so as to actuated by more than one transmitted code thus allowing two or more transmitters to actuate the same garage door operator and wherein the receiver stores the valid codes for the different transmitters.

CROSS-REFERENCES TO RELATED APPLICATIONS

.[.This application comprises an improvement on application Ser. No.615,339, filed May 30, 1984, U.S. Pat. No. 4,638,433, in which theinventor is Wayne R. Schindler assigned to the assignee of the presentapplication..]. .Iadd.This application is a continuation of applicationSer. No. 425,724 filed Apr. 20, 1995, now U.S. Pat. No. RE 35,364, Oct.29, 1996, which is a continuation of Ser. No. 87,142, Jul. 2, 1993,abandoned, which is a continuation of Ser. No. 715,006, Jun. 13, 1991,abandoned, which is a continuation of Ser. No. 398,379, Aug. 24, 1989,abandoned, which is a reissue application of Ser. No. 06/792,661 nowU.S. Pat. No. 4,750,118, which is a continuation-in-part of applicationSer. No. 615,339 filed May 30, 1984, now U.S. Pat. No. 4,638,433. BothSer. Nos. 08/425,725 and 08/700,610 are reissues of Ser. No. 06/792,661now U.S. Pat. No. 4,750,188. .Iaddend.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates in general to garage door operators and inparticular to a novel garage door operator wherein the receiver can beenergized by two or more transmitted codes which are stored in thereceiver.

2. Description of the Prior Art

Garage door operators of the prior art used transmitters in which thecode can be changed by various methods as, for example, by moving twoposition switches to change the code. Such systems have also used codechanging switches in the receiver so that the receivers can be set tocorrespond to the selected transmitter code.

It has also been known to use fixed frequency transmitters and fixedfrequency receivers such that if the transmitted frequency matches thereceiver frequency the receiver will respond.

SUMMARY OF THE INVENTION

It is an object of the present invention to provide a plurality oftransmitters wherein each transmitter has its own unique and permanentnon-user changeable code and wherein the receiver can be placed into aprogram mode wherein it will receive and store two or more codescorresponding to two different transmitters. The number of codes whichcan be stored in transmitters can be extremely high as, for example,greater than one million codes. Thus, the invention makes it possible toeliminate the requirements for code selection switches in thetransmitters.

In the present invention the decoder module in the receiver will becapable of learning several different transmitted codes which willeliminate code switches in the receiver and also provides for multipletransmitters for actuating the garage opener.

The communication link can be various system such as radio frequency,light, wires, etc.

The invention makes it very easy for the user to operate the system andmore secured code systems are available due to the higher number ofavailable codes.

An encoded signal will be utilized wherein a pulse and blank timecomprises a sync time base and different link pulses such as 1, 2, 3 or4 milliseconds can be selected so as to provide different codings. Eachdatum can be 1, 2, 3 or 4 times the length of the sync pulse. The timingis from the rising edge to rising edges of the pulse and with ten databits the number of codes can be in excess of one million codes.

In the invention, each transmitter encoder will contain a chip whichcontains a unique code and the receiver will be able to memorize two ormore as, for example, five different transmitter codes. This eliminatesthe need to have coding switches in either the transmitter or receiver.This eliminates the requirement that the user set the code switches sothey match since the code switches are eliminated.

In the invention, during an operate mode, a receiver code must match analready programmed code four times in order to operate the garage door.This match is referred to as a valid code. Each valid code can beseparated by up to two error codes and still have the output indicatedas accurate.

In the program mode a code must be received four times in a row in orderto be permanently stored in the receiver. Any error code will reset thevalid code counter.

The advantage of the coding scheme are:

1. Higher peak power without exceeding the FCC rules which gives longertransmitter range.

2. Eliminate code switches in the transmitter and receiver making iteasier for a customer to install and operate his garage door operator.

3. Customers having more than one transmitter will not have to matchcodes.

4. More secure codes due to the higher number of combinations which areavailable. Other objects, features and advantages of the invention willbe readily apparent from the following description of certain preferredembodiments thereof, taken in conjunction with the accompanying drawingsalthough variations and modifications may be effected without departingfrom the spirit and scope of the novel concepts of the disclosure and inwhich:

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a perspective view illustrating a garage door operator;

FIG. 2 illustrates in block form the invention;

FIG. 3 comprises a flow diagram;

FIG. 4 is a continuation of the flow diagram; and

FIG. 5 illustrates the coding scheme.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 1 illustrates a garage door operator 10 mounted to the ceiling of agarage and connected to operate a door 17. Garage door operator 10 has ahead unit 11 which is supported from the ceiling which includes a motorwhich drives a suitable chain to which a trolley 13 is attached so thatit moves along a rail 12. The trolley 13 has a release cord 20 andpivotally carries a lever arm 14 which is attached to a bracket 16mounted to the door so as to raise and open it by pulling it alongconventional rails.

The header unit 11 includes a receiver and operating mechanism and canbe actuated from a control unit 38 which has a operate switch 39.

The garage door operator can also be operated by the transmitters 26 and28 which have operate transmit buttons 27 and 29, respectively.

As illustrated in FIG. 2 the garage door operator includes a receiver 41which has a suitable antenna 42 for receiving radio frequencytransmissions from the transmitters 26 and 28 and supplies an input to adecoder 43 which provides an output to a microprocessor unit 44. Themicroprocessor unit 44 is connected to a garage door operator mechanism46 which includes the motor which drives the chain 15 to move the door17 in a conventional manner. The control 38 is connected to themicroprocessor 44. A pair of switches 22 and 23 are mounted on a switchunit 19 connected to the unit 11 and also to the microprocessor 44. Theswitch 22 is a two position switch that can be moved between the operateand program positions to establish the "operate" and "program" modes.The switch 23 can be moved to a number of selected positions indicatedby the 1 through 5 so as to allow the particular code of a number ofdifferent transmitters to be stored in the receiver so that the receiverwill respond to such codes.

In the illustrated embodiment, the receiving unit can respond to up tofive different transmitters which have five different transmittingcodes. FIG. 5 illustrates the code utilized in which the bit times arenominally 0.5 milliseconds for example. The data times are nominally 1,2, 3 or 4 milliseconds.

The sync pulse is a unit measure of time. Each datum is measured withrespect to the sync pulse and each datum can be 1, 2, 3 or 4 times thelength of the sync pulse. The timing is from the riding edge to risingedge of adjacent pulses. Using 10 data bits the number of codes which isavailable is in excess of one million codes.

In the invention, each transmitter such as transmitters 26 and 28 willhave a unique code which is determined by the encoder chip contained inthe transmitter. The receiver unit will be able to memorize and store anumber of different codes as, for example, five different transmittercodes which eliminate the need of coding switches in either thetransmitter or receiver which are used in the prior art. This alsoeliminates the requirement that the user match the transmitter andreceiver code switches.

When the garage door operator is initially installed, the switch 22 ismoved to the program mode and the energize button 27 of the firsttransmitter 26 is depressed so that the unique code of the transmitter26 is transmitted. This is received by the receiver 41 and decoded bythe decoder 43 and supplied to the microprocessor unit 44. The switch 23is placed in the first position and with the switch 22 in the programmode the code of the transmitter 26 will be supplied to the memoryaddress storage 47 and stored therein. Then if the switch 22 is moved tothe operate mode and the transmitter 26 energized by depressing thetransmit switch 27, the receiver 41, decoder and the microprocessor 44will compare the received code with the code of the transmitter 26stored in the first memory location in the memory address storage 47 andsince the stored memory address for the transmitter 26 coincides withthe transmitted code of the transmitter 26 the microprocessor 44 willenergize the garage door operation mechanism 46 to open or close thedoor.

In order to store the code of the second transmitter 28 the switch 22 ismoved again to the program mode and the switch 23 to the second positionand the transmitter 28 is energized by depressing its transmit switch29. This causes the receiver 41 and decoder 43 to decode the transmittedsignal and supply it to the microprocessor 44 which then supplies thecoded signal of the transmitter 28 to the memory address storage 47where it is stored in a second address storage location. Then the switch22 is moved to the operate position and when either of the transmitters26 and 28 are energized, the receiver 41 decoder 43 and microprocessor44 will energize the garage door operation mechanism 46 to cause thedoor to either move up or down depending upon its initial position.Thus, the codes of the transmitters 26 and 28 are transmitted and storedin the memory address storage 47 during the program mode after which thegarage door operation mechanism will respond to either of thetransmitters 26 and 28. Any desired number of transmitters can beprogrammed to operate the garage door mechanism as, for example, up tofive transmitters can be programmed into the memory address storage 47by using the program switch 22 and the selector switch 23.

This invention eliminates the requirement that binary switches be set inthe transmitter or receiver as is done in systems of the prior art toestablish a code to which the receiver will respond and the inventionalso allows a garage door operator to respond to a number of differenttransmitters because the specific codes of a number of the transmittersis stored and retained in the memory address storage 47 of this unit.

FIGS. 3 and 4 comprise the flow chart which describe both the operateand program modes of the invention. Basically, in the operate mode, areceived code must match a program which has already been programmed andfor four times so as to operate the garage door. This match is referredto as a valid code in the flow chart. Each valid code can be separatedby up to two error codes and still have the output actuate. For example,a code of valid-error-error-valid-valid-valid would actuate the door. Onthe other hand, a code of valid-valid-valid-error-error-error-validwould not actuate the door.

In the program mode a code must be received four times in a row in orderto be permanently stored. Any error code will reset the valid codecounter.

With reference to the flow diagrams of FIGS. 3 and 4 if it be assumedinitially that the switch 22 is in the operate position an incomingsignal will be supplied to terminal A in FIG. 3 and an output will besupplied to terminal B which indicates that the switch 22 is not in theprogram mode but in the operate mode. Terminal B is illustrated in FIG.4 and the microprocessor compares the incoming code with any codes inthe five code locations stored in the memory address storage 47. Ifthese codes match then the error counter is cleared and all other validcounters. If the valid counter receives the code four times .[.than.]..Iadd.then .Iaddend.output is supplied to the terminal C which operatesthe garage door operator. If the valid counter for the code equals lessthan 4, then the valid code counter is incremented until the valid codecounter does equal 4 which actuates the proper output. Relative to FIG.4 if the input code does not match any of the five stored codes, thenthe error counter is incremented and when the error counter equals 3 theerror counter is cleared and all valid counters are cleared.

If the switch 22 is in the program mode as shown in FIG. 3 when theincoming signal from a transmitter is received, the flow diagram isfollowed so as to store the new incoming program in the code locationpointed to by the code location pointer .[.23.].. It is to be noted thatup to five addresses can be stored in the system of the invention.

It is seen that the present invention allows a receiving system torespond to one of a plurality of transmitters which have differentunique codes which can be stored in the receiver during a program mode.Each time the "program mode switch" 22 is moved to the program position,a different storage area as determined by the switch 23 can be connectedso that the new transmitter code would be stored in that address. Afterall of the address storage capacity have been used additional codeswould erase all old codes in the memory address storage before storing anew one.

Although the invention has been described with respect to preferredembodiments, it is not to be so limited as changes and modifications maybe made which are within the full intended scope as defined by theappended claims.

We claim as our invention: .[.1. A garage door operator for a garagedoor comprising, a garage door operation mechanism with an output shaftconnected to said garage door to open and close it, a radio receiver, adecoder connected to receive the output of said radio receiver, amicroprocessor connected to receive the output of said decoder and tosaid garage door operation mechanism to energize it, a switch moveablebetween program and operate positions connected to said microprocessorto place said microprocessor in the operate or the program mode, amemory means for storing a plurality of addresses connected to saidmicroprocessor when said switch is in the program position, a memoryselection switch connected to said microprocessor, a plurality of radiotransmitters with different codes, said memory selection switch setablein a first position at a time when a first one of said radiotransmitters is energized so that the code of said first transmitterwill be stored in said memory means and said memory selection switchsetable in a second position at a time when a second one of said radiotransmitters is energized so that the code of said second transmitterwill be stored in said memory means, and said microprocessor placed inthe operate mode when said switch is in the operate position so thateither or both of said first and second radio transmitters whenenergized cause said microprocessor to energize said garage dooroperator mechanism..]..[.2. A garage door operator for a garage dooraccording to claim 1 wherein said first and second radio transmitterswhen energized radiate coded signals and said microprocessor receivesand compares coded signals from said first and second transmitters withcoded signals stored in said memory means and said microprocessorproduces a garage door operate signal if the received transmitted signaland any one of said coded signals stored in said memory meansmatch..]..[.3. A garage door operator according to claim 2 wherein saidmemory selection switch has "n" positions where "n" is an integer andthe codes of "n" transmitters can be stored in said memory means whensaid switch is in the program mode..]..[.4. A garage door operatoraccording to claim 3 wherein the code stored in said memory means can bechanged by placing said switch in the program mode and one of saidplurality of transmitters is energized which has a code which differsfrom the code previously stored in said memory means..]..Iadd.5. Anoperator for controlling a position of a barrier comprising:at least oneradio frequency transmitter having a non-user changeable code for radiofrequency transmitting a radio frequency transmission corresponding tothe transmitter a radio frequency receiver for being adapted to receivethe first-mentioned radio frequency transmission from thefirst-mentioned radio frequency transmitter and being adapted to receivea second radio frequency transmission from a second radio frequencytransmitter having a second non-user changeable code, different fromsaid first non-user changeable code; a program mode designator fordesignating a program mode; a memory comprising a plurality of storagelocations; a processor having a processor controlled code locationpointer and responsive to a program mode designation by said programmode designator and the reception by said radio frequency receiver ofsaid first-mentioned radio frequency transmission for storing a firststored code corresponding to the first-mentioned radio frequencytransmitter in one of said plurality of storage locations derived fromthe processor controlled code location pointer, the processor responsiveto said program mode designation by said program mode designator and thereception by said receiver of said second radio frequency transmissionfor storing a second stored code corresponding to the second radiofrequency transmitter in another of said plurality of storage locationsderived from the processor controlled code location pointer, and theprocessor responsive to an operate mode and the reception of saidfirst-mentioned radio frequency transmission after the storage of saidfirst stored code for moving the barrier and responsive to said operatemode and to the reception of said second radio frequency transmissionafter the storage of said first and said second stored codes for movingsaid barrier. .Iaddend..Iadd.6. An operator for controlling a positionof a barrier according to claim 5 wherein said processor controlled codelocation comprises a software controlled code location pointer..Iaddend..Iadd.7. An operator for controlling a position of a barrieraccording to claim 5 wherein the processor comprises a microprocessor..Iaddend..Iadd.8. A system for controlling a position of a barriercomprising: a first radio frequency transmitter having a first non-userchangeable code and for radio frequency transmitting a first radiofrequency transmission corresponding to the first transmitter; a secondradio frequency transmitter having a second non-user changeable code,different from said first non-user changeable code and for radiofrequency transmitting a second radio frequency transmissioncorresponding to the second transmitter; and an operator for controllinga position of a barrier, said operator comprising:a radio frequencyreceiver for receiving said first and said second radio frequencytransmissions; a program mode designator for designating a program mode;a memory comprising a plurality of storage locations; a processor havinga processor controlled code location pointer and responsive to a programmode designation by said program mode designator and the reception bysaid radio frequency receiver of said first radio frequency transmissionfor storing a first stored code corresponding to the first radiofrequency transmitter in one of said plurality of storage locationsderived from the processor controlled code location pointer, theprocessor responsive to said program mode designation by said programmode designator and the reception by said receiver of said second radiofrequency transmission for storing a second stored code corresponding tothe second radio frequency transmitter in another of said plurality ofstorage locations derived from the processor controlled code locationpointer, and the processor responsive to an operate mode and thereception of said first radio frequency transmission after the storageof said first stored code for moving the barrier and responsive to saidoperate mode and to the reception of said second radio frequencytransmission after the storage of said first and said second storedcodes for moving said barrier. .Iaddend..Iadd.9. A system forcontrolling a position of a barrier according to claim 8 wherein theprocessor comprises a microprocessor. .Iaddend..Iadd.10. A system forcontrolling a position of a barrier comprising:a first radio frequencytransmitter having a first non-user changeable code and for radiofrequency transmitting a first radio frequency transmissioncorresponding to the first transmitter; a second radio frequencytransmitter having a second non-user changeable code, different fromsaid first non-user changeable code and for radio frequency transmittinga second radio frequency transmission corresponding to the secondtransmitter; and an operator for controlling a position of a barrier,said operator comprising:a radio frequency receiver for receiving saidfirst and said second radio frequency transmissions; a program modedesignator for designating a program mode; a memory comprising aplurality of storage locations; a processor having a software controlledcode location pointer and responsive to a program mode designation bysaid program mode designator and the reception by said radio frequencyreceiver of said first radio frequency transmission for storing a firststored code corresponding to the first radio frequency transmitter inone of said plurality of storage locations derived from the processorcontrolled code location pointer, the processor responsive to saidprogram mode designation by said program mode designator and thereception by said receiver of said second radio frequency transmissionfor storing a second stored code corresponding to the second radiofrequency transmitter in another of said plurality of storage locationsderived from the software controlled code location pointer, and theprocessor responsive to an operate mode and the reception of said firstradio frequency transmission after the storage of said first stored codefor moving the barrier and responsive to said operate mode and to thereception of said second radio frequency transmission after the storageof said first and said second stored codes for moving said barrier..Iaddend..Iadd.11. A system for controlling a position of a barrieraccording to claim 10 wherein the processor comprises a microprocessor..Iaddend..Iadd.12. A garage door operator for a garage door comprising,a garage door operation mechanism with an output shaft connected to saidgarage door to open and close it, a radio receiver, a decoder connectedto receive the output of said radio receiver, a microprocessor connectedto receive the output of said decoder and to said garage door operationmechanism to energize it, a switch moveable between operate and programpositions connected to said microprocessor to place said microprocessorin the program mode, memory means for storing a plurality of addressesconnected to said microprocessor when said switch is in the programposition, a memory selector for selecting respective storage addressesin the memory means, a plurality of radio transmitters with differentnon-user changeable codes, said memory selector pointing to a firststorage address at a time when a first one of said radio transmitters isenergized so that the code of said first transmitter will be stored insaid memory means in said first address and said memory selectorpointing to a second storage address at a time when a second one of saidradio transmitters is energized so that the code of said secondtransmitter will be stored in said memory means in said second address,and said microprocessor placed in the operate mode when said switch isin the operate position so that either of said first and second radiotransmitters when energized cause said microprocessor to energize saidgarage door operator mechanism. .Iaddend..Iadd.13. A garage dooroperator for a garage door according to claim 12, wherein said first andsecond radio transmitters when energized radiate coded signals and saidmicroprocessor receives and compares coded signals from said first andsecond transmitters with coded signals stored in said memory means andsaid microprocessor produces a garage door operate signal if thereceived transmitted signal and any one of said coded signals stored insaid memory means match. .Iaddend..Iadd.14. A garage door operatoraccording to claim 12 wherein said memory selector has "n" positionswhere "n" is an integer an the codes of "n" transmitters can be storedin said memory means when said switch is in the program mode..Iaddend..Iadd.15. A garage door opener according to claim 12 whereinthe code stored in said memory means can be changed by placing saidswitch in the program mode and one of said plurality of transmitters isenergized which has a code which differs from the code previously storedin said memory means. .Iaddend..Iadd.16. A garage door operatoraccording to claim 12 wherein the memory selector comprises a softwarecontrolled code location pointer identifying a memory address..Iaddend..Iadd.17. An operator for controlling operation of equipmentcomprising:a radio receiver, a decoder connected to receive the outputof said radio receiver, a microprocessor connected to receive the outputof said decoder and to said equipment to energize it, switch means forselection between operate and program positions connected to saidmicroprocessor to place said microprocessor in the program mode, memorymeans for storing a plurality of addresses connected to saidmicroprocessor when said switch means is in the program position, memoryselection means for selecting respective storage addresses in thememory, a plurality of radio transmitters with different non-userchangeable codes, said memory selection means being adapted to select afirst storage location at a time when a first one of said radiotransmitters is energized so that the code of said first transmitterwill be stored in said memory means in the first location and saidmemory selection means being adapted to select a second storage locationat a time when a second one of said radio transmitters is energized sothat the code of said second transmitter will be stored in said memorymeans in said second location, and said microprocessor placed in theoperate mode when said switch means is in the operate position so thateither of said first and second radio transmitters, when energized causesaid microprocessor to energize said equipment. .Iaddend..Iadd.18. Anoperator according to claim 17 wherein said first and second radiotransmitters when energized radiate coded signals and saidmicroprocessor receives and compares coded signals from said first andsecond transmitters with coded signals stored in said memory means andsaid microprocessor produces an operate signal if the receivedtransmitted signal and any one of said coded signals stored in saidmemory means match. .Iaddend..Iadd.19. An operator according to claim 17wherein said memory selection means has "n" states where "n" is aninteger and the codes of "n" transmitters can be stored in said memorymeans when said switch means is in the program mode. .Iaddend..Iadd.20.An operator according to claim 17 wherein the code stored in said memorymeans can be changed by placing said switch means in the program modeand one of said plurality of transmitters is energized which has a codewhich differs from the code previously stored in said memory means..Iaddend..Iadd.21. An operator according to claim 17 wherein the memoryselection means comprises a software controlled code location pointeridentifying a memory address. .Iaddend..Iadd.22. A garage door operatoraccording to claim 21 wherein the microprocessor increments the codelocation pointer to select the memory addresses to store the respectivetransmitter codes. .Iaddend..Iadd.23. A garage door operator for agarage door comprising:a garage door operation mechanism with an outputshaft connected to said garage door to open and close it; a plurality ofRF transmitters, each of said transmitters having its own differentnon-user changeable transmitter code and having means for transmittingwhen energized, an RF signal carrying a code from which the transmittercode can be derived; a receiver for receiving said coded RFtransmissions; a decoder for deriving a code corresponding to thetransmitter code in the energized transmitter; processor means forproviding in its operate mode an operating signal to said garage dooroperation mechanism to energize it and for providing in its program modea derived code for storage; mode selection means connected to saidprocessor means for placing said processor means in its program mode;memory means having a plurality of addresses for storing a plurality ofderived codes under the control of said processor means; memoryselection means controlled by said processor means for identifyingrespective ones of the memory addresses; said memory selection meansidentifying one of the memory addresses so that the processor means,when in its program mode, causes the derived code of one of thetransmitters to be stored in said memory means at the one memoryaddress, and said memory selection means identifying a second memoryaddress so that the processor means, when in its program mode, causesthe derived code of a second transmitter to be stored in said memorymeans at the second memory address; said processor means, when in itsoperate mode, determining whether the derived code and one of the storedcodes correspond, said processor means providing an operating signal toenergize said garage door operator mechanism upon correspondence..Iaddend..Iadd.24. A garage door operator for a garage door inaccordance with claim 23, wherein the processor means determines whetherthe derived code has been previously stored in any of the memorylocations and if the derived code is already stored, the processor meansdoes not cause the derived code to be stored. .Iaddend..Iadd.25. Agarage door operator for a garage door in accordance with claim 23,wherein if a derived code is stored in all the available storagelocations, the memory selection means will select one of such storagelocations and the processor means causes the derived code to be storedin that location. .Iaddend..Iadd.26. A garage door operator for a garagedoor in accordance with claim 23, wherein means are provided to preventthe processor means from energizing the garage door operator mechanismuntil the processor means determines that the derived code correspondswith the stored code a preset plurality of times. .Iaddend..Iadd.27. Agarage door operator for a garage door in accordance with claim 23,wherein means are provided to prevent the processor means from storing aderived code until the same derived code is received a preset pluralityof times. .Iaddend..Iadd.28. A garage door operator for a garage dooraccording to claim 23 wherein said processor means comprises amicroprocessor. .Iaddend..Iadd.29. A garage door operator comprising: agarage door operation mechanism with an output shaft connected to saidgarage door to open and close it; a plurality of RF transmitters, eachof said RF transmitters having its own different, non-user changeabletransmitter code and having a transmitter for transmitting whenenergized, an RF signal carrying a code from which the transmitter codecan be derived; a receiver for receiving said coded RF transmissions; adecoder for deriving a code corresponding to the transmitter code of theenergized transmitter; a processor for providing in its operate mode anoperating signal to said garage door operation mechanism to energize it;a mode selector connected to said processor for placing said processorin its program mode; an addressable memory having a plurality ofaddresses controlled by said processor for storing a plurality ofderived codes; a software controlled memory selector controlled by saidprocessor for identifying respective ones of the memory addresses; saidsoftware controlled memory selector identifying one of the memoryaddresses so that the processor, when in its program mode, causes thederived code of one of the transmitters to be stored in said addressablememory at the one memory address, and said software controlled memoryselector identifying another memory address so that the processor, whenin its program mode, causes the code of a second transmitter to bestored in said addressable memory at the memory address; said processor,when in its operate mode, determining whether the derived codecorresponds with at least one of the second codes and when there iscorrespondence said processor providing an operating signal to energizesaid garage door mechanism. .Iaddend..Iadd.30. A garage door operatoraccording to claim 29 wherein the processor comprises a microprocessor..Iaddend.